package view;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.GridLayout;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JPanel;

import Controller.ControladorPrincipal;
import Excepciones.FueraDeLimites;
import Juego.Jugador;
import MapaStuff.Hectarea;
import Ubicacion.Punto;

public class VentanaRedAgua extends JFrame {

	private static final long serialVersionUID = 4334117558600109178L;

	public VentanaRedAgua(Jugador modelo, ControladorPrincipal controladorPpal) {
		setSize(400, 300);

        setLocation(0, 0);

        setVisible(false);
		
		Container contenedor = this.getContentPane();
		contenedor.setLayout(new BorderLayout());
		this.setTitle("Red De Agua");
		
		JPanel panel = new JPanel(new GridLayout (20,20));        
        for (int x = 1; x <= 20; x++) {
            for (int y = 1; y <= 20; y++) {
            	Hectarea hectareaModelo;
				try {
					hectareaModelo = modelo.mapaDelJuego.darHectarea(new Punto (y,x));
					VistaHectarea vistaDeHectarea = new VistaHectareaRedAgua(new Punto(y, x), hectareaModelo);
					vistaDeHectarea.setBorder(BorderFactory.createLineBorder(Color.black));
	            	vistaDeHectarea.addMouseListener(controladorPpal.getControladorMouse(hectareaModelo, vistaDeHectarea));
					panel.add(vistaDeHectarea);
				} catch (FueraDeLimites e) {
					// no puede ser fuera de limites
				}
            }
        }
        contenedor.add(panel,BorderLayout.CENTER);
        controladorPpal.conocerVistaAgua(this);
     
	}

}
